package com.designpatterns.templatemethod.hook;

/**
 * @author Brook
 */
public abstract class CaffeineBeverage {
    final void prepareRecipe() {
        boilWater();
        brew();
        pourInCup();
        addCondiments();
    }

    /**
     * name brew
     */
    abstract void brew();

    /**
     * name
     */
    abstract void addCondiments();

    private void boilWater() {
        System.out.println("Boil water");
    }

    private void pourInCup() {
        System.out.println("Pour into cup");
    }



}
